約 4,127,109 件
https://w.atwiki.jp/japanesehiphop/pages/1154.html
Format Title Artist Label Model Number Release Press 12 PARTY BY PHAR THE DOPEST LASTRUM CORPORATION LALP-1006 1998/12/15 - Side Track Title Produce A 1 PARTY(理想) MUMMY-D 2 PARTY(理想)(Inst) MUMMY-D B 3 パーティ(現実) KREVA 4 パーティ(現実)(Inst) KREVA PERTAIN CD By Phar The Dopest
https://w.atwiki.jp/wmpskin_sm02/pages/36.html
概略 SQLの構文と内容「from テーブル名」部分 「expand 再生リスト名または固定値」部分 「select 列名,[, 列名, ...]」部分 「order by 列名 [asc|desc] [,列名 [asc|desc] ...]」部分 「where 列名 [= 等] 値 [[and|or] 列名 [= 等]値 ...]」部分 「option [totallength | top | limit | persent | randomselectfrom | expandplaylist] [値, ...]」部分 レコードの抽出条件の注意点や制約条件式の記述順 複数条件設定について null比較 文字列WHERE句利用時の補足 日付型(lastplayeddate, adddateなど) 現在再生中のメディアの該当する属性値を利用する ランダムな値を利用する 四則演算・()・in・between・not・サブクエリ・count(*)・max()・group by等について データ比較について(where句) ソート順について(order by句) その他の制約 [部分編集] 概略 本スキンsm02ではSQL(っぽい)の構文を使ってプレイリスト作成とプレイリストの列指定ができます。 SQLについて非常に大雑把に説明すると、データベース操作を行う為のデータベース言語です。 Windows Media Playerのライブラリはデータベースみたいなものなので、SQL構文でプレイリスト作成やデータ出力機能を作ってみました。 以降、SQLと記述した場合、断り書きがない限り、本スキンの独自SQLをさします。 SQLを知らない方にとっては、やや難解な機能かもしれません。 サンプルを試してもよくわからない場合、本機能は無視してもいいと思います。 既にSQLを知っている方は容易く習得できるはずですが、本スキンには独自仕様もあります。 特にwhere句には独自仕様が多いので注意してください。 他に独自仕様としてexpand句やoption句なんてものもあります。 一応ですが、本スキンの構文解析の精度が低い上に、Windows Media Playerの制約や本スキンの仕様、不具合等により 「このSQL文は正しいはずなのにエラーになるぞ?」 「このSQL文おかしいけどエラーにならないぞ?」 「このSQL文の検索結果おかしくない?」 「エラーメッセージがわかりにくい!」 等の事は十分起こりえます。 ご了承ください。 [部分編集] SQLの構文と内容 select 列名[, 列名, ...] from テーブル名 where 列名 [= 等] 値 [[and|or] 列名 [= 等]値 ...] order by 列名 [asc|desc] [,列名 [asc|desc] ...] option タイプ [値, ...] または select 列名[, 列名, ...] expand 再生リスト名または固定値[, 再生リスト名, ...] where 列名 [= 等] 値 [[and|or] 列名 [= 等]値 ...] order by 列名 [asc|desc] [,列名 [asc|desc] ...] option タイプ [値, ...] 「from テーブル名」部分 ライブラリ登録されているファイルの取得元テーブルを指定します。 指定できるテーブルは以下の通りです audio 音楽ファイル video 動画ファイル photo 画像ファイル playlist プレイリスト(再生リストの属性) other その他(MIDI等) ※from句とexpand句は併用できません。 ※expand句と異なり、テーブルは1つのみ設定可能です。 ◇ 音楽ファイルを取得 select name from audio 「expand 再生リスト名または固定値」部分 ライブラリ登録されている再生リスト、再生中のプレイリスト、ブックマーク等を取得元に指定します。 指定できるパターンは以下の通りです。 再生リスト名 登録済の再生リスト名を で囲ってください。%を用いると再生リスト名の部分指定ができます。 all 固定値:登録済の全ての再生リスト random 固定値:登録済の再生リストからランダム current 固定値:現在再生中のプレイリスト playlistview 固定値:SQL検索画面のプレイリストビューに設定されたプレイリスト bookmark1~20 固定値:ブックマーク1~ブックマーク20に含まれるプレイリスト。参照:ブックマーク stackboard 固定値:スタックボード。参照:スタックボード画面 recentfiles_mix 固定値:最近使ったファイル[混合]。取得件数は設定値(最大表示件数)に依存。参照:曲の移動と再生履歴 recentfiles_audio 固定値:最近使った音楽ファイル。取得件数は設定値(最大表示件数)に依存。参照:曲の移動と再生履歴 recentfiles_video 固定値:最近使った動画ファイル。取得件数は設定値(最大表示件数)に依存。参照:曲の移動と再生履歴 recentfiles_other 固定値:最近使ったその他ファイル。保存中の履歴全てを取得。参照:曲の移動と再生履歴 recentfiles_mix_all 固定値:最近使ったファイル[混合]。保存中の履歴全てを取得。参照:曲の移動と再生履歴 recentfiles_audio_all 固定値:最近使った音楽ファイル。保存中の履歴全てを取得。参照:曲の移動と再生履歴 recentfiles_video_all 固定値:最近使った動画ファイル。保存中の履歴全てを取得。参照:曲の移動と再生履歴 recentfiles_other_all 固定値:最近使ったその他ファイル。保存中の履歴全てを取得。参照:曲の移動と再生履歴 frequentlyfiles_mix 固定値:最近再生頻度の高いファイル[混合]。取得件数は設定値(最大表示件数)に依存。参照:曲の移動と再生履歴 frequentlyfiles_audio 固定値:最近再生頻度が高い音楽ファイル。取得件数は設定値(最大表示件数)に依存。参照:曲の移動と再生履歴 frequentlyfiles_video 固定値:最近再生頻度が高い動画ファイル。取得件数は設定値(最大表示件数)に依存。参照:曲の移動と再生履歴 frequentlyfiles_other 固定値:最近再生頻度が高いその他ファイル。取得件数は設定値(最大表示件数)に依存。参照:曲の移動と再生履歴 frequentlyfiles_mix_all 固定値:最近再生頻度の高いファイル[混合]。保存中の履歴全てを取得。参照:曲の移動と再生履歴 frequentlyfiles_audio_all 固定値:最近再生頻度が高い音楽ファイル。保存中の履歴全てを取得。参照:曲の移動と再生履歴 frequentlyfiles_video_all 固定値:最近再生頻度が高い動画ファイル。保存中の履歴全てを取得。参照:曲の移動と再生履歴 frequentlyfiles_other_all 固定値:最近再生頻度が高いその他ファイル。保存中の履歴全てを取得。参照:曲の移動と再生履歴 ※from句とexpand句は併用できません。 ※同じファイルが複数個所に登録されている場合、マージされ1つになります。 ◇ 「BestMusic」という再生リストからデータを取得 select name expand BestMusic ◇ 「My List」という再生リストからデータを取得 select name expand My List ◇ 「GoodSong」「BetterSong」という2つの再生リストからデータを取得 select name expand GoodSong , BetterSong ◇ 「洋楽」から始まる再生リストからデータを取得 select name expand 洋楽% ◇ 「2014」を含む再生リストからデータを取得 select name expand %2014% ◇ 全ての再生リストからデータを取得 select name expand all ◇ランダムな 再生リストからデータを取得 select name expand random ◇ 再生中のプレイリストからデータを取得 select name expand current ◇ SQL検索画面のプレイリストビューに設定されたプレイリストリストからデータを取得 select name expand playlistview ◇ 1番目のブックマークに含まれるプレイリストからデータを取得 select name expand bookmark1 ◇ 15番目のブックマークに含まれるプレイリストからデータを取得 select name expand bookmark15 ◇ スタックボードからデータを取得 select name expand stackboard 「select 列名,[, 列名, ...]」部分 プレイリストビューに表示する列を指定します。 ファイル出力の場合は出力する列となります。 列名は","区切りで複数登録できます。 ◇ 全ての音楽ファイルを取得し、name, length列を表示 select name, length from audio 列名の代わりに"*"を指定できます。 "*"を指定した場合は、テーブル毎に組み込んだ列を表示します。 (※一般的なSQLでは指定テーブルの全列を表示しますが、本SQLは異なります) ◇ * を使う select * from audio また列にconvert関数が利用できます。※詳細はSQL関数を参照してください 他に、as句を使うと列に別名を設定できます。 別名内にスペース( )やカンマ(,)を使う場合は別名を で囲ってください。 ◇ name, lengthに別名を付ける select name as タイトル, length as 時間 from audio ◇ name, lengthに別名を付ける(スペースやカンマを使う) select name as なまえ,です , length as さいせい 時間 , rating as ☆はあなたの評価です from audio 「order by 列名 [asc|desc] [,列名 [asc|desc] ...]」部分 取得レコードのソート条件を指定します。 省略が可能です。 省略した場合はソートされません。 列名の後ろにascを指定すれば昇順、descを指定すれば降順にソートされます。 asc|descが未設定の場合は昇順にソートされます。 カンマ記号","で列を区切れば複数のソート条件が設定できます。 ◇ nameを昇順でソート order by name order by name asc ◇ nameを降順でソート order by name desc ◇ albumを昇順でソート、nameを降順でソート order by album asc, name desc 特殊なソートとして[order by shuffle]または[order by random]、[order by reverse]があります。 [order by shuffle]を使うとプレイリストの並び順をシャッフル(重複なし)に並べ替えます。 [order by random]を使うとプレイリストの並び順をランダム(重複の可能性があり)に並び替えます。 [order by reverse]を使うとソート結果を逆順にします。 ◇ シャッフルソート order by shuffle ◇ ランダムソート order by random ◇ 逆順に並べ替える order by reverse 「where 列名 [= 等] 値 [[and|or] 列名 [= 等]値 ...]」部分 取得レコードの絞り込み条件を指定します。 where句は省略が可能です。 省略した場合、対象テーブルの全レコードが取得されます。 「name = hoge 」や「playcount 10」のように条件を指定します。 「列名 演算子(=等) 値」の比較のみ対応しており、「値 = 列名」や 「列名1 = 列名2」のような比較はできません。 列ごとにデータ型と範囲を持っています。 データ型にはnumber(数値),string(文字列),date(日時),boolean(真偽)があります。 文字列型は「列名= 値 」のように値を で囲んでください。 日付型は「列名= 2001/10/01 」や「列名= 2001/10/01 22 00 00 」のように 値を で囲み、かつ yyyy/mm/dd または yyyy/mm/dd 24hh mm ss 形式で 記述してください。 真偽型は「列名=true」または「列名=false」のように記述してください。 データ型によって利用できる比較演算子が異なります。 数値(=, , =, . =. ) 文字列(=, ,like,notlike) 日付(=, , =, . =. ) 真偽(=, ) このほかに(is,isnot)が全てのデータ型で利用できます。 (is,isnot)は後述のnullで説明します。 ◇ nameがhoge where name= hoge ◇ playcountが10でない where playcount 10 ◇ releasedateが 2010/01/01 13 00 00 以上 where releasedate = 2010/01/01 13 00 00 ◇ releasedateが 2010/01/01 00 00 00 より大きい where releasedate 2010/01/01 ◇ nameが い から始まる。 where name like い% ◇ nameが い から始まらない where name notlike い% ◇ urlに rock が含まれている where url like %rock% 特別な比較値としてnullがあります。 この値は"データが存在しない"事を表しています。 全てのデータ型で利用できますが、指定可能な比較演算子isまたはisnotだけです。 ◇ データが未設定のreleasedateだけ取得 where releasedate is null ◇ データが設定されているartistだけ取得 where artist isnot null なお文字列の場合は「column = 」と「column is null」は同じ結果になります。 ◇ 2つは同じ結果となる。 where album is null where album = where album isnot null where album 複数の条件を設定する場合はandまたはorを使います。 論理演算子はand orの優先順位です。 3つ以上の条件を設定する場合は優先順位に気を付けてください。 本スキンでは()が未対応です。 ◇ playcountが10以上かつplaycountが20未満のレコードを検索 where playcount = 10 and playcount 20 ◇ playcountが30以上またはratingが99のレコードを取得 where playcount = 30 or rating = 99 ◇ 「playcountが30以上」または「ratingが99かつnameが あ で始まる」レコードを取得 where playcount = 30 or rating = 99 and name like あ% ◇ 「ratingが0より大きく50以下かつnameが b で始まる」または「ratingが99かつnameが a で始まる」 ◇ レコードを取得 where rating 0 and rating = 50 and name like b% or rating = 99 and name like a% 「option [totallength | top | limit | persent | randomselectfrom | expandplaylist] [値, ...]」部分 取得レコードに対するオプション操作を指定します。 option句は省略が可能です。 totallength 先頭レコードから合計再生時間[秒]指定による取得レコードの絞込み。 where句・order by句が設定している場合、その検索結果に対して絞り込みを行います。 ◇ 取得レコードの合計再生時間を1時間(3600秒)以下に絞り込みます。 option totallength 3600 option totallength toMinute(60) option totallength toHour(1) top 先頭レコードから件数指定による取得レコードの絞込み。 where句・order by句が設定している場合、その検索結果に対して絞り込みを行います。 ◇ 先頭レコードから20件取得します。 option top 20 limit 先頭レコードから位置指定[0始まり]、件数指定のによる取得レコードの絞込み。 where句・order by句が設定している場合、その検索結果に対して絞り込みを行います。 ◇ 3件目のレコードから10件取得します。 option limit 2, 10 ※3, 10ではありません! "0,1,2"で3件目のレコード persent 先頭レコードから%範囲指定による取得レコードの絞込み。 where句・order by句が設定している場合、その検索結果に対して絞り込みを行います。 ◇ 再生回数が多い曲の上位25%のレコード(正確には0%~25%のレコード)を取得します。 order by playcount desc option persent 0, 25 ◇ 評価の高い曲の上位5%~20%のレコードを取得します。 order by rating desc option persent 5, 20 randomselectfrom 列名 指定列名のランダムな値を使った取得レコードの絞込み。 where句・order by句が設定している場合、その検索結果に対して絞り込みを行います。 ※SQL関数のRandomValue()の説明も参照してください。 ◇ album列に存在するランダムな値を基に、取得レコードを絞り込む option randomselectfrom album ◇ artist列に存在するランダムな値を基に、取得レコードを絞り込む option randomselectfrom artist expandplaylist from playlistを指定したとき限定。 selectを実行すると通常はメディアファイルが取得されますが、 from playlistの場合は、プレイリストビュー上にツリー構造にメディアファイルが表示されています。 このプレイリストを通常のselectと同じようにフラットな状態に展開します +プレイリスト1 +--メディア1-1 +プレイリスト2 +--メディア2-1 +--メディア2-2 ↓ メディア1-1 メディア2-1 メディア2-2 ◇ from playlistで全ての再生リストを取得し、プレイリストビュー上にフラットに展開します。 select * from playlist option expandplaylist ◇ from playlistで全ての再生リストを取得(option expandplaylistを使わない場合) ◇ ※↑のSQLと実行結果を比較してみてください。 select * from playlist [部分編集] レコードの抽出条件の注意点や制約 条件式の記述順 [列名][比較演算子][値]の順で記述してください。 一般的なSQLでは、[値][比較演算子][列名]や[列名][比較演算子][列名]などの可能ですが、本スキンは未対応です。 ○ where name = aaa × where aaa = name × where name = album 複数条件設定について 現機能では()に未対応です。 論理演算子はand orの優先順位です。 ○ where name= aaa ○ where name= aaa and playcount 10 ○ where name= aaa or name= bbb ○ where name= aaa or name= bbb and playcount 10 × where (name= aaa or name= bbb ) and playcount 10 ◇ ()に未対応 null比較 一般的なSQLではnullでない場合、[is not]と記述しますが本SQLでは[isnot]と記述します。 ○ where name isnot null × where name is not null 文字列 文字列データの比較で を値に含めたいときは と記述してください。 ○ where name = I m a student. × where name = I m a student. 検索時に大文字・小文字の区別はしません name = you name = You name = YOU 上記の検索結果の場合、大文字・小文字関係なくyouというnameを検索します。 なお文字列のデータ比較の詳細は後述しています。 後方一致(name like %xyz )はサポートしていません。 一般的なSQLでは部分一致しない場合、[not like]と記述しますが、 本SQLでは[notlike]と記述します。 ○ name notlike あ% × name not like あ% WHERE句利用時の補足 length 秒単位 ◇ 10秒以上 length = 10 ◇ 2分以上 length = 120 length = toMinute(2) ◇ 1時間以上 length = 3600 length = toHour(1) ※to~関数についての詳細は、SQL関数を参照してください freamrate fps単位 ◇ 20fps以上 freamrate = 20 filesize バイト単位 ◇ 1KB以上 filesize = 1024 filesize = toKB(1) ◇ 1MB以上(1024*1024 = 1048576 byte) filesize = 1048576 filesize = toMB(1) ◇ 1GB以上(1024*1024*1024 = 1073741824 byte) filesize = 1073741824 filesize = toGB(1) ※to~関数についての詳細は、SQL関数を参照してください rating 特殊設定(ratingautoも()内の数値以外は同じ) ☆0 0(0) ☆1 1-12(1) ☆2 13-37(25) ☆3 38-62(50) ☆4 63-86(75) ☆5 87-99(99) ◇ ☆2つを指定(確実に取得したい場合) rating = 13 and rating = 37 ◇ ☆2つを指定(ratingの場合データ不整合なければこちらでもOK。ratingautoの場合は70などの場合もある) rating = 25 ◇ toStar関数で☆4以上を指定 rating = toStar(4) ※to~関数についての詳細は、SQL関数を参照してください 日付型(lastplayeddate, adddateなど) ◇ 日付指定 lastplayeddate = 2011/01/01 ◇ 日時指定 lastplayeddate = 2011/01/01 15 01 09 ◇ today系関数で指定 ※詳細はSQL関数を参照してください lastplayeddate = TodayFirst() 現在再生中のメディアの該当する属性値を利用する ◇ 現在再生中のメディアのアーティストの属性値を指定 artist = CurrentValue() ◇ 現在再生中のメディアの再生時間よりも長い曲を指定 length = CurrentValue() ランダムな値を利用する ◇ artistにランダムな値を設定する artist = RandomValue() [部分編集] 四則演算・()・in・between・not・サブクエリ・count(*)・max()・group by等について 未対応です。 [部分編集] データ比較について(where句) データ比較は「大文字・小文字は区別しない」「全角・半角は区別する」「ひらがな、カタカナは区別する」という仕様になっています。 order by句(後述)とデータ比較方法が異なるので注意してください。 where句は、MS提供コンポーネント(Queryオブジェクト)を使ってデータ取得を行っている為、MS仕様に準じています。 Windows8-Windows Media Player 12で確認した結果なので例えばWindows Media Player 11では異なる仕様となるかもしれません。 ◇ 上と下は同じ結果になる where name = abcd where name = ABcD ◇ 上と下は別の結果になる where name = Aあ where name = Aア [部分編集] ソート順について(order by句) 数値型データは数値として判定 真偽型データは文字として判定 日付型データは1970年からの経過時間を基に判定 文字列型データはエクスプローラに近いソート大文字・小文字を区別しない 全角・半角を区別しない ひらがな、カタカナを区別しない ハイフン(-)は無視。 文字列内の数値は数値として扱う。 SJISコードでソート。 etc. where句(前述)とデータ比較方法が異なるので注意してください。 ◇audioのname列(文字列)に下のようなレコードがある時に... AbcdE bgm10 ABCD BGM01 bgm2 あまい abefg かたち イス 王国 影(音読み:エイ、訓読み:かげ) ◇ nameを昇順ソート検索を行うと... select name from audio order by name asc ◇こんな感じにソートされます。 ABCD AbcdE abefg BGM01 bgm2 bgm10 あまい イス かたち 影(音読み:エイ、訓読み:かげ) 王国 [部分編集] その他の制約 Windows Media Player 11以降に提供されている組込み関数を内部で使用している為、Windows Media Player 11以降でなければ動作しません。※本スキンはWindows Media Player 11以降にのみ対応しています。※動作確認は主にWindows8-Windows Media Player 12で行っています。OSとWindows Media Playerとの組合せによって使用不可の列があるようです。 selectの列数が多い場合、プレイリストビューに表示しきれず、指定列の一部が表示されない可能性があります。(Windows Media Playerの仕様?)初めての検索時や全件出力等の重たい処理により数分間、Windows Media Playerが固まる事があります。歌詞・コメントなど幾つかの列はWindows Media Playerの組込み関数内でwhere句の処理ができない為、スキン側で代替処理を行っています。これら列のwhere句による条件指定は、他の列と比べて著しく処理が遅くなる場合があります。 結果タブへ検索結果を出力する場合はプレイリストビューへの出力に比べて、処理が重くなります。取得レコード件数や表示列数が多い場合は、非常に時間がかかります。特に「タブ区切り」の場合、Windows Media Playerが数分~数十分固まる程、処理時間がかかります。 expand句による再生リスト指定は非常に重くなることがあります。 実行履歴は本スキンの終了またはWindows Media Playerの終了により消去されます。 システム的な制約があるため、実行したSQLを保存する機能は作らない事にしました。SQL文を残したい場合、メモ帳などを使い手動でバックアップを取ってください。
https://w.atwiki.jp/anime_wiki/pages/16924.html
■獣旋バトル モンスーノ 脚本 13 ■爆丸エボリューションズ 脚本 SP1(D) SP2(D) ■関連タイトル OPテーマ Rey/MONSUNO! rakuten_design= slide ;rakuten_affiliateId= 053df7e0.7c451bd1.0c852203.190c5695 ;rakuten_items= ctsmatch ;rakuten_genreId=0;rakuten_size= 468x160 ;rakuten_target= _blank ;rakuten_theme= gray ;rakuten_border= on ;rakuten_auto_mode= on ;rakuten_genre_title= off ;rakuten_recommend= on ; 随時更新! pixivFANBOX アニメ@wiki ご支援お待ちしています! ムック本&画集新刊/個人画集新刊/新作Blu-ray単巻/新作Blu-ray DVD-BOX アニメ原画集全リスト スタッフインタビューwebリンク集 最新登録アイテム Switch ゼルダの伝説 Tears of the Kingdom Switch 世界樹の迷宮Ⅰ・Ⅱ・Ⅲ HD REMASTER Switch ピクミン 4 大友克洋 Animation AKIRA Layouts Key Frames 2 小説 機動戦士ガンダム 水星の魔女 1 ONE PIECE FILM REDデラックス・リミテッド・エディション 4K ULTRA HD Blu-ray Blu-ray 劇場版 ソードアート・オンライン -プログレッシブ- 冥き夕闇のスケルツォ 完全生産限定版 Blu-ray 映画『ゆるキャン△』 Blu-ray 【コレクターズ版】 Blu-ray ウマ娘 プリティーダービー 4th EVENT SPECIAL DREAMERS!! Blu-ray 天地無用!GXP パラダイス始動編 Blu-ray第1巻 特装版 天地無用!魎皇鬼 第伍期 Blu-ray SET 「GS美神」全話いっき見ブルーレイ Blu-ray ソードアート・オンライン -フルダイブ- メーカー特典:「イベントビジュアル使用A3クリアポスター」付 ラブライブ!虹ヶ咲学園スクールアイドル同好会 5th Live! 虹が咲く場所 Blu-ray Memorial BOX 宇宙戦艦ヤマト2202 愛の戦士たち Blu-ray BOX 特装限定版 地球へ… Blu-ray Disc BOX 完全生産限定版 神風怪盗ジャンヌ Complete Blu-ray BOX HUNTER×HUNTER ハンター試験編・ゾルディック家編Blu-ray BOX BLEACH Blu-ray Disc BOX 破面篇セレクション1+過去篇 完全生産限定版 MAZINGER THE MOVIE 1973-1976 4Kリマスター版 アニメ・ゲームのロゴデザイン シン・仮面ライダー 音楽集 テレビマガジン特別編集 仮面ライダー 完全版 EPISODE No.1~No.98 MOVIE リスアニ!Vol.50.5 ぼっち・ざ・ろっく!号デラックスエディション ヤマノススメ Next Summit アニメガイド おもいでビヨリ アニメ「魔入りました!入間くん」オフィシャルファンブック 『超時空要塞マクロス』パッケージアート集 CLAMP PREMIUM COLLECTION X 1 トーマの心臓 プレミアムエディション パズル ドラゴンズ 10th Anniversary Art Works はんざわかおり こみっくがーるず画集 ~あばばーさりー!~ あすぱら画集 すいみゃ Art Works trim polka-トリムポルカ- つぐもも裏 超!限界突破イラスト&激!すじ供養漫画集 開田裕治ウルトラマンシリーズ画集 井澤詩織1st写真集 mascotte 鬼頭明里写真集 my pace 内田真礼 1st photobook 「まあやドキ」 進藤あまね1st写真集 翠~Midori~ 声優 宮村優子 対談集 アスカライソジ 三石琴乃 ことのは 亀田祥倫アートワークス 100% 庵野秀明責任編集 仮面ライダー 資料写真集 1971-1973 金子雄司アニメーション背景美術画集 タローマン・クロニクル ラブライブ!サンシャイン!! Find Our 沼津~Aqoursのいる風景~ 機動戦士ガンダム 逆襲のシャア 友の会[復刻版] 梅津泰臣 KISS AND CRY 資料集 安彦良和 マイ・バック・ページズ 『機動戦士ガンダム ククルス・ドアンの島』編 氷川竜介 日本アニメの革新 歴史の転換点となった変化の構造分析 Blu-ray THE IDOLM@STER CINDERELLA GIRLS 10th Anniversary Celebration Animation ETERNITY MEMORIES Blu-ray おいら宇宙の探鉱夫 ブルーレイ版 Blu-ray 映画 バクテン!! 完全生産限定版 アイカツ! 10th STORY ~未来へのSTARWAY~ Blu-ray BOX 初回生産限定版 はたらく細胞 Blu-ray Disc BOX 完全生産限定版 Blu-ray 長靴をはいた猫 3作品収録 Blu-ray わんぱく王子の大蛇退治 Blu-ray 魔道祖師 完結編 完全生産限定版 魔道祖師Q Blu-ray Disc BOX 完全生産限定盤 にじよん あにめーしょん Blu-ray BOX 【特装限定版】 Blu-ray 鋼の錬金術師 完結編 プレミアム・エディション Blu-ray付き やはりゲームでも俺の青春ラブコメはまちがっている。完 限定版【同梱物】オリジナルアニメ Blu-ray「だから、思春期は終わらずに、青春は続いていく。」
https://w.atwiki.jp/wginoh/pages/14.html
更新履歴 2011/0429 ver1作成 2011/05/15 仮想OSのインストールを追記 2012/11/18 システム構成は削除、homebrewのインストール方法更新 更新履歴 概要 Macを利用する上での注意点Macの大文字・小文字の区別について Macの64bit対応について 基本のセットアップパッケージ管理ソフトをいれる MySQLのインストール1.パッケージをダウンロードして、インストールする。 2.brewパッケージ管理ソフトからコマンドラインでインストールする。 3.設定ファイルの準備 Node.jsのインストール単一のバージョンのみでよい場合 複数のバージョンをインストールする場合 概要 自分の開発環境の構築について書いておく Macを利用する上での注意点 Macの大文字・小文字の区別について 結構、自分で忘れてしまっていることが多いが、Macを標準でそのまま利用していると、ファイル名の大文字と小文字は区別されない。CUIで作業していると困ることがある。 一応、HDフォーマット時に、区別するように指定もできるみたいだが、それをやると、Macのアプリケーションが、大文字と小文字は区別されないことが前提だったりして動かなくなることもあるみたいだ。 なので、基本は区別せずに自分で気をつけることにする。 Macの64bit対応について ソフトウェアをインストールするときなど、i386やx86_64などと書かれたものが分かれていたりするが 簡単にいうと、32bit対応か64bit対応の違いらしい。 現在、利用しているMac OS X 10.6(snow leopard)は64bitに対応している。 しかし、標準では32bitモードで起動しているみたい。 Mac OS X v10.6:64 ビットのカーネルを使う Mac そもそも、プロセッサが対応しているかは、 Intel ベースの Mac のプロセッサが 32 ビットか 64 ビットかを識別する方法 起動するカーネルを自分で選択する場合は、 Mac OS X v10.6:32 ビットまたは 64 ビットカーネルで起動する まあ、今のところは他のアプリなどに影響が出ると嫌なので、デフォルトの32bitにしておく。(2011/05) 基本のセットアップ パッケージ管理ソフトをいれる パッケージをいれるのに管理ソフトがあると便利のためパッケージ管理ソフトを導入。将来的にはAppStoreに統一されていくんだろうか。 以前はMacportsが有名だったが、現在はHomebrewが主流のようだ。 今のMacbookでインストールするために方法を変更 参考: [Mac] Mountain Lionへパッケージ管理「Homebrew」をインストールする手順のメモ http //tools4hack.santalab.me/howto-mountainlion-install-homebrew.html javaをインストールする。 $ XCodeをインストール 以前はダウンロードしてきてインストールしていたが、今はAppStoreから手に入る。便利! Homebrewをインストールする。 $ ruby -e "$(curl -fsS http //gist.github.com/raw/323731/install_homebrew.rb)" 利用方はmanコマンドで確認したほうが早いが、主に $ brew command [options] [formula] という形式。 formulaというのはいわゆるパッケージのことだと思えばよい。。。と思う。 command 内容 install インストールする options インストール時に指定できるオプションを見る。オプションは、brew install [option] formula といった形で利用する。 search formulaを探す info formulaの情報を表示 list インストールされているformulaのリスト update Homebrewのアップデートを行う MySQLのインストール MySQLはデフォルトでは入ってないのでインストールの必要がある。 ここで方法としては、下記のものがある。 1.パッケージをダウンロードして、インストールする。 MySQL Download Mac OS X のタイプをダウンロードする。DMGパッケージのものがtar.gzのタイプより楽でいいと思う。 このタイプだとシステム環境設定から起動などをGUIから制御できるみたい。 2.brewパッケージ管理ソフトからコマンドラインでインストールする。 今回はこちらの方法でインストールを行う。 $ brew install mysql --ここまで依存関係のダウンロードなどで結構時間がかかった-- Set up databases to run AS YOUR USER ACCOUNT with unset TMPDIR mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp To set up base tables in another folder, or use a differnet user to run mysqld, view the help for mysqld_install_db mysql_install_db --help and view the MySQL documentation * http //dev.mysql.com/doc/refman/5.5/en/mysql-install-db.html * http //dev.mysql.com/doc/refman/5.5/en/default-privileges.html To run as, for instance, user "mysql", you may need to `sudo` sudo mysql_install_db ...options... Start mysqld manually with mysql.server start A "/etc/my.cnf" from another install may interfere with a Homebrew-built server starting up correctly. To connect mysql -uroot To launch on startup * if this is your first install mkdir -p ~/Library/LaunchAgents cp /usr/local/Cellar/mysql/5.5.10/com.mysql.mysqld.plist ~/Library/LaunchAgents/ launchctl load -w ~/Library/LaunchAgents/com.mysql.mysqld.plist * if this is an upgrade and you already have the com.mysql.mysqld.plist loaded launchctl unload -w ~/Library/LaunchAgents/com.mysql.mysqld.plist cp /usr/local/Cellar/mysql/5.5.10/com.mysql.mysqld.plist ~/Library/LaunchAgents/ launchctl load -w ~/Library/LaunchAgents/com.mysql.mysqld.plist You may also need to edit the plist to use the correct "UserName". Warning m4 macros were installed to "share/aclocal". Homebrew does not append "/usr/local/share/aclocal" to "/usr/share/aclocal/dirlist". If an autoconf script you use requires these m4 macros, you ll need to add this path manually. == Summary /usr/local/Cellar/mysql/5.5.10 6232 files, 219M, built in 5.9 minutes $ mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp Installing MySQL system tables... OK Filling help tables... OK To start mysqld at boot time you have to copy support-files/mysql.server to the right place for your system PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER ! To do so, start the server, then issue the following commands /usr/local/Cellar/mysql/5.5.10/bin/mysqladmin -u root password new-password /usr/local/Cellar/mysql/5.5.10/bin/mysqladmin -u root -h (machine name).local password new-password Alternatively you can run /usr/local/Cellar/mysql/5.5.10/bin/mysql_secure_installation which will also give you the option of removing the test databases and anonymous user created by default. This is strongly recommended for production servers. See the manual for more instructions. You can start the MySQL daemon with cd /usr/local/Cellar/mysql/5.5.10 ; /usr/local/Cellar/mysql/5.5.10/bin/mysqld_safe You can test the MySQL daemon with mysql-test-run.pl cd /usr/local/Cellar/mysql/5.5.10/mysql-test ; perl mysql-test-run.pl Please report any problems with the /usr/local/Cellar/mysql/5.5.10/scripts/mysqlbug script! 上記に書かれている内容から以下の内容をやった。 $ unset TMPDIR $ mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp $ mysql.server start $ mysql -uroot Can’t connect to local MySQL server through socket /tmp/mysql.sock となってエラーがでた。このエラーが出た場合の可能性としては、次の可能性がある。 可能性1 そもそもmysqlが起動していない。起動していないときはエラーがでる。psコマンドで確認してみる。 可能性2 MySQLサーバとクライアントで、利用しているソケットファイルのパスが違う。 MySQLサーバのソケットファイルの位置は、インストール時に指定していなければ/tmp/mysql.sock また、次のコマンドで知ることもできる。 $ mysql_config --socket このソケットファイルの位置をサーバとクライアントであわせる必要がある。 可能性3 何らかの影響でsocketファイルが存在しない場合。このような場合は再起動をかけると、 ソケットファイルが復元される。 今回は、調べたところ、プロセスはたちあがっていたが、ソケットファイルが存在しなかった。 そのため、mysqldを再起動をかける。 ちなみに、launchctlでロードしているplistファイルでOnDemandがfalseの場合、stopするとすぐに起動する。よってstopすると結果的に再起動となる。 $ launchctl stop com.mysql.mysqld.plist が、結局、sockファイルが作成されていなかったので、一度unloadした。 $ launchctl unload com.mysql.mysqld.plist この時点で残っていたプロセスは、killした。 mysql.server stopのほうがよかった気もする。 再び、launchctlでloadを行う $ launchctl load com.mysql.mysqld.plist 自動起動をしないようにする場合は、launchctlを利用せず、 $ mysql.server start でよいと思う 3.設定ファイルの準備 最後に設定ファイルを準備する。 通常、設定ファイルの位置は、 参考:MySQL 5.1 リファレンスマニュアル ファイル 目的 /etc/my.cnf グローバルオプション $MYSQL_HOME/my.cnf サーバ固有のオプション defaults-extra-file --defaults-extra-file=pathで指定されたファイル(あれば) /.my.cnf ユーザ固有のオプション MYSQL_HOMEはサーバ固有のファイルmy.cnfを含むディレクトリへのパスを含む環境変数です。 MYSQL_HOME がセットされていない状態で mysqld_safe プログラムを使ってサーバをスタートさせると、 mysqld_safe は次のように MYSQL_HOME をセットしようとします。 BASEDIR と DATADIR をそれぞれ、MySQLベースディレクトリとデータディレクトリのパスネームの代理に立てます。 DATADIRにはmy.cnfファイルが存在し、BASEDIRには存在しない場合、mysqld_safeはMYSQL_HOMEをDATADIRにセットします。 または、もしMYSQL_HOMEがセットされておらず、my.cnfファイルがDATADIRに存在しない場合、mysqld_safeはBASEDIRにMYSQL_HOMEをセットします。 MySQL 5.1ではDATADIRのmy.cnfファイルのロケーションとしての使用は認証されていません。BASEDIR の方が良い場所です。 ということらしい。 ちなみに、 一般的にDATADIRは/usr/local/mysql/dataでバイナリインストールに、または/usr/local/varでソースインストールに使用されます。これはコンフィグレーションタイムに特定されたデータディレクトリロケーションであって、mysqldが起動したときの--datadirオプションに呼応しているのではないということに注意してください。--datadirの起動時の使用はサーバがオプションファイルを探す際に何の影響ももたらしません。 これはサーバがオプションを処理する前にオプションファイルを探すからです。 らしい。最近まで勘違いしていた。 Node.jsのインストール Windows or Macでインストールする場合、Node.jsが単一のバージョンのみでよいか、複数必要かで違ってくると思われる。 単一のバージョンのみでよい場合 ネイティブのインストーラがおすすめ。インストーラをダウンロードしてきて実行するだけ。 node.js v0.8(2012/11現在安定版 複数のバージョンをインストールする場合 複数のバージョンをインストールして試す場合、nvm、nave、n、nodeenv、nodebrew などがある。 個人的にzshを利用していて、相性が良さそうなのが nodebrewのようなのでこれを利用する。 簡単な比較などは下記リンク先で書かれていた。 node.js の環境管理ツール nodebrew - Block Rockin’ Codes nodebrewはgithubで公開されている。 hokaccha / nodebrew - github インストール方法はREADMEの通り。 $ curl https //raw.github.com/hokaccha/nodebrew/master/nodebrew | perl - setup ・ ・ ずらずらとコンパイル ・ ・ 完了したら環境変数でパスを通す。 export PATH=$HOME/.nodebrew/current/bin $PATH $ source ~/.zshrc $ nodebrew ls v0.8.14 current none $ nodebrew use v0.8.14 use v0.8.14 $ node -v v0.8.14 $ npm -v 1.1.65
https://w.atwiki.jp/amazonz/pages/39.html
アップロード ?php require_once( Connections/connAmazon2.php ); ? !-- アクセス制御 -- ?php session_start(); $MM_authorizedUsers = ""; $MM_donotCheckaccess = "true"; function isAuthorized($strUsers, $strGroups, $UserName, $UserGroup) { // For security, start by assuming the visitor is NOT authorized. $isValid = False; // When a visitor has logged into this site, the Session variable MM_Username set equal to their username. // Therefore, we know that a user is NOT logged in if that Session variable is blank. if (!empty($UserName)) { // Besides being logged in, you may restrict access to only certain users based on an ID established when they login. // Parse the strings into arrays. $arrUsers = Explode(",", $strUsers); $arrGroups = Explode(",", $strGroups); if (in_array($UserName, $arrUsers)) { $isValid = true; } // Or, you may restrict access to only certain users based on their username. if (in_array($UserGroup, $arrGroups)) { $isValid = true; } if (($strUsers == "") true) { $isValid = true; } } return $isValid; } $MM_restrictGoTo = "account_cre2.php"; if (!(*1) (isAuthorized("",$MM_authorizedUsers, $_SESSION[ MM_Username ], $_SESSION[ MM_UserGroup ])))) { $MM_qsChar = "?"; $MM_referrer = $_SERVER[ PHP_SELF ]; if (strpos($MM_restrictGoTo, "?")) $MM_qsChar = " "; if (isset($QUERY_STRING) strlen($QUERY_STRING) 0) $MM_referrer .= "?" . $QUERY_STRING; $MM_restrictGoTo = $MM_restrictGoTo. $MM_qsChar . "accesscheck=" . urlencode($MM_referrer); header("Location ". $MM_restrictGoTo); exit; } ? ?php $currentPage = $_SERVER["PHP_SELF"]; $maxRows_rsAmazonz2 = 5; $pageNum_rsAmazonz2 = 0; if (isset($_GET[ pageNum_rsAmazonz2 ])) { $pageNum_rsAmazonz2 = $_GET[ pageNum_rsAmazonz2 ]; } $startRow_rsAmazonz2 = $pageNum_rsAmazonz2 * $maxRows_rsAmazonz2; $colname_rsAmazonz2 = "%"; if (isset($_GET[ key ])) { $colname_rsAmazonz2 = (get_magic_quotes_gpc()) ? $_GET[ key ] addslashes($_GET[ key ]); } mysql_select_db($database_connAmazon2, $connAmazon2); $query_rsAmazonz2 = sprintf("SELECT * FROM amazonz_data WHERE topic LIKE %s ORDER BY uptime DESC", $colname_rsAmazonz2); $query_limit_rsAmazonz2 = sprintf("%s LIMIT %d, %d", $query_rsAmazonz2, $startRow_rsAmazonz2, $maxRows_rsAmazonz2); $rsAmazonz2 = mysql_query($query_limit_rsAmazonz2, $connAmazon2) or die(mysql_error()); $row_rsAmazonz2 = mysql_fetch_assoc($rsAmazonz2); if (isset($_GET[ totalRows_rsAmazonz2 ])) { $totalRows_rsAmazonz2 = $_GET[ totalRows_rsAmazonz2 ]; } else { $all_rsAmazonz2 = mysql_query($query_rsAmazonz2); $totalRows_rsAmazonz2 = mysql_num_rows($all_rsAmazonz2); } $totalPages_rsAmazonz2 = ceil($totalRows_rsAmazonz2/$maxRows_rsAmazonz2)-1; $queryString_rsAmazonz2 = ""; if (!empty($_SERVER[ QUERY_STRING ])) { $params = explode(" ", $_SERVER[ QUERY_STRING ]); $newParams = array(); foreach ($params as $param) { if (stristr($param, "pageNum_rsAmazonz2") == false stristr($param, "totalRows_rsAmazonz2") == false) { array_push($newParams, $param); } } if (count($newParams) != 0) { $queryString_rsAmazonz2 = " " . htmlentities(implode(" ", $newParams)); } } $queryString_rsAmazonz2 = sprintf(" totalRows_rsAmazonz2=%d%s", $totalRows_rsAmazonz2, $queryString_rsAmazonz2); ? ?php session_start(); $logoutAction = $_SERVER[ PHP_SELF ]."?doLogout=true"; if (*2) ($_SERVER[ QUERY_STRING ] != "")){ $logoutAction .=" ". htmlentities($_SERVER[ QUERY_STRING ]); } if (*3) ($_GET[ doLogout ]=="true")){ //to fully log out a visitor we need to clear the session varialbles session_unregister( MM_Username ); session_unregister( MM_UserGroup ); $logoutGoTo = "top.php"; if ($logoutGoTo) { header("Location $logoutGoTo"); exit; } } ? ?php $currentPage = $_SERVER["PHP_SELF"]; function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") { $theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) $theValue; switch ($theType) { case "text" $theValue = ($theValue != "") ? " " . $theValue . " " "NULL"; break; case "long" case "int" $theValue = ($theValue != "") ? intval($theValue) "NULL"; break; case "double" $theValue = ($theValue != "") ? " " . doubleval($theValue) . " " "NULL"; break; case "date" $theValue = ($theValue != "") ? " " . $theValue . " " "NULL"; break; case "defined" $theValue = ($theValue != "") ? $theDefinedValue $theNotDefinedValue; break; } return $theValue; } $editFormAction = $_SERVER[ PHP_SELF ]; if (isset($_SERVER[ QUERY_STRING ])) { $editFormAction .= "?" . htmlentities($_SERVER[ QUERY_STRING ]); } if (*4) ($_POST["MM_insert"] == "form2")) { $insertSQL = sprintf("INSERT INTO amazonz_data (id, title, category, topic, uptime, uset_id) VALUES (%s, %s, %s, %s, %s, %s)", GetSQLValueString($_POST[ id ], "int"), GetSQLValueString($_POST[ title ], "text"), GetSQLValueString($_POST[ category ], "text"), GetSQLValueString($_POST[ topic ], "text"), GetSQLValueString($_POST[ uptime ], "date"), GetSQLValueString($_POST[ uset_id ], "text")); mysql_select_db($database_connAmazon2, $connAmazon2); $Result1 = mysql_query($insertSQL, $connAmazon2) or die(mysql_error()); $insertGoTo = "admin2.php"; if (isset($_SERVER[ QUERY_STRING ])) { $insertGoTo .= (strpos($insertGoTo, ? )) ? " " "?"; $insertGoTo .= $_SERVER[ QUERY_STRING ]; } header(sprintf("Location %s", $insertGoTo)); } $maxRows_rsAmazonz2 = 5; $pageNum_rsAmazonz2 = 0; if (isset($_GET[ pageNum_rsAmazonz2 ])) { $pageNum_rsAmazonz2 = $_GET[ pageNum_rsAmazonz2 ]; } $startRow_rsAmazonz2 = $pageNum_rsAmazonz2 * $maxRows_rsAmazonz2; mysql_select_db($database_connAmazon2, $connAmazon2); $query_rsAmazonz2 = "SELECT * FROM amazonz_data ORDER BY uptime DESC"; $query_limit_rsAmazonz2 = sprintf("%s LIMIT %d, %d", $query_rsAmazonz2, $startRow_rsAmazonz2, $maxRows_rsAmazonz2); $rsAmazonz2 = mysql_query($query_limit_rsAmazonz2, $connAmazon2) or die(mysql_error()); $row_rsAmazonz2 = mysql_fetch_assoc($rsAmazonz2); if (isset($_GET[ totalRows_rsAmazonz2 ])) { $totalRows_rsAmazonz2 = $_GET[ totalRows_rsAmazonz2 ]; } else { $all_rsAmazonz2 = mysql_query($query_rsAmazonz2); $totalRows_rsAmazonz2 = mysql_num_rows($all_rsAmazonz2); } $totalPages_rsAmazonz2 = ceil($totalRows_rsAmazonz2/$maxRows_rsAmazonz2)-1; mysql_select_db($database_connAmazon2, $connAmazon2); $sessionname=$_SESSION[ MM_Username ]; $query_rsAmazonz2 = sprintf("SELECT * FROM amazonz_data WHERE topic LIKE %s uset_id = $sessionname ORDER BY uptime DESC" , $colname_rsAmazonz2); $query_limit_rsAmazonz2 = sprintf("%s LIMIT %d, %d", $query_rsAmazonz2, $startRow_rsAmazonz2, $maxRows_rsAmazonz2); $rsAmazonz2 = mysql_query($query_limit_rsAmazonz2, $connAmazon2) or die(mysql_error()); $row_rsAmazonz2 = mysql_fetch_assoc($rsAmazonz2); if (isset($_GET[ totalRows_rsAmazonz2 ])) { $totalRows_rsAmazonz2 = $_GET[ totalRows_rsAmazonz2 ]; } else { $all_rsAmazonz2 = mysql_query($query_rsAmazonz2); $totalRows_rsAmazonz2 = mysql_num_rows($all_rsAmazonz2); } $totalPages_rsAmazonz2 = ceil($totalRows_rsAmazonz2/$maxRows_rsAmazonz2)-1; $queryString_rsAmazonz2 = ""; if (!empty($_SERVER[ QUERY_STRING ])) { $params = explode(" ", $_SERVER[ QUERY_STRING ]); $newParams = array(); foreach ($params as $param) { if (stristr($param, "pageNum_rsAmazonz2") == false stristr($param, "totalRows_rsAmazonz2") == false) { array_push($newParams, $param); } } if (count($newParams) != 0) { $queryString_rsAmazonz2 = " " . htmlentities(implode(" ", $newParams)); } } $queryString_rsAmazonz2 = sprintf(" totalRows_rsAmazonz2=%d%s", $totalRows_rsAmazonz2, $queryString_rsAmazonz2); ? html xmlns="http //www.w3.org/1999/xhtml" head meta http-equiv="Content-Type" content="text/html; charset=euc-jp" / title Amazonz -管理- /title link href="css.css" rel="stylesheet" type="text/css" / script language="JavaScript" type="text/javascript" !-- function MM_swapImgRestore() { //v3.0 var i,x,a=document.MM_sr; for(i=0;a i a.length (x=a[i]) x.oSrc;i++) x.src=x.oSrc; } function MM_preloadImages() { //v3.0 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array(); var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i a.length; i++) if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}} } function MM_findObj(n, d) { //v4.01 var p,i,x; if(!d) d=document; if((p=n.indexOf("?")) 0 parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n]) d.all) x=d.all[n]; for (i=0;!x i d.forms.length;i++) x=d.forms[i][n]; for(i=0;!x d.layers i d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); if(!x d.getElementById) x=d.getElementById(n); return x; } function MM_swapImage() { //v3.0 var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i (a.length-2);i+=3) if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];} } /script /head body onload="MM_preloadImages( img/account2.jpg , img/key2.jpg , img/member2.jpg , img/kate2.jpg )" div id="body_2" div id="head" div id="head1" /div div id="head2" /div /div div id="main" div id="menu" div class="img1" img src="img/menu1.jpg" width="180" height="24" class="img1" / /div div class="img1" div class="img1" ?php echo ($_SESSION[ MM_Username ]. "さん こんにちわ!"); ? /div p a href=" ?php echo $logoutAction ? " ログアウト /a a href="top.php" 投稿閲覧 /a /p /div div class="img1" img src="img/menu1.jpg" width="180" height="24" hspace="0" vspace="0" border="0" class="img1" / /div div class="img1" a href="member_s.php" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage( Image10 , , img/member2.jpg ,1)" img src="img/member.jpg" alt="メンバー検索" name="Image10" width="180" height="40" border="0" id="Image10" / /a /div div class="img1" a href="category_s.php" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage( Image11 , , img/kate2.jpg ,1)" img src="img/kate.jpg" alt="カテゴリー検索" name="Image11" width="180" height="40" border="0" id="Image11" / /a /div div class="img1" a href="key_s.php" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage( Image9 , , img/key2.jpg ,1)" img src="img/key.jpg" alt="キーワード検索" name="Image9" width="180" height="40" border="0" id="Image9" / /a /div /div div id="text" img src="img/blank.jpg" / form action=" ?php echo $editFormAction; ? " method="post" name="form2" id="form2" table width="250" height="100" align="center" tr valign="baseline" td align="left" nowrap="nowrap" class="style3" タイトル: input type="text" name="title" value="" size="32" / /td /tr tr valign="baseline" td align="left" nowrap="nowrap" class="style3" カテゴリ: select name="category" option value="BOOK" ?php if (!(strcmp("BOOK", ""))) {echo "SELECTED";} ? BOOK /option option value="DVD" ?php if (!(strcmp("DVD", ""))) {echo "SELECTED";} ? DVD /option option value="MUSIC" ?php if (!(strcmp("MUSIC", ""))) {echo "SELECTED";} ? MUSIC /option /select /td /tr tr valign="baseline" td align="left" valign="top" nowrap="nowrap" p class="style3" トピック: br / textarea name="topic" cols="40" rows="5" /textarea /p /td /tr tr valign="baseline" td align="left" nowrap="nowrap" class="style3" input type="submit" value="投稿" / /td /tr /table span class="style3" input type="hidden" name="id" value="" / input type="hidden" name="uptime" value=" ?php echo date( Y/m/d H i s ); ? " / input type="hidden" name="uset_id" value=" ?php echo($_SESSION[ MM_Username ]); ? " / input type="hidden" name="MM_insert" value="form2" / /span /form table width="400" border="0" align="center" cellpadding="3" ?php do { ? tr td class="style3" ?php echo $row_rsAmazonz2[ uptime ]; ? /td /tr tr td class="style3" ?php echo $row_rsAmazonz2[ title ]; ? /td /tr tr td class="style3" ?php echo $row_rsAmazonz2[ category ]; ? /td /tr tr td class="style3" ?php echo $row_rsAmazonz2[ topic ]; ? /td /tr tr td class="style3" ?php echo $row_rsAmazonz2[ uset_id ]; ? /td /tr tr td span class="style3" a href="update2.php?id= ?php echo $row_rsAmazonz2[ id ]; ? " 修正 /a a href="del2.php?id= ?php echo $row_rsAmazonz2[ id ]; ? " 削除 /a /span hr / /td /tr ?php } while ($row_rsAmazonz2 = mysql_fetch_assoc($rsAmazonz2)); ? /table table border="0" width="50%" align="center" tr td width="23%" align="center" ?php if ($pageNum_rsAmazonz2 0) { // Show if not first page ? a href=" ?php printf("%s?pageNum_rsAmazonz2=%d%s", $currentPage, 0, $queryString_rsAmazonz2); ? " 先頭 /a ?php } // Show if not first page ? /td td width="31%" align="center" ?php if ($pageNum_rsAmazonz2 0) { // Show if not first page ? a href=" ?php printf("%s?pageNum_rsAmazonz2=%d%s", $currentPage, max(0, $pageNum_rsAmazonz2 - 1), $queryString_rsAmazonz2); ? " 戻る /a ?php } // Show if not first page ? /td td width="23%" align="center" ?php if ($pageNum_rsAmazonz2 $totalPages_rsAmazonz2) { // Show if not last page ? a href=" ?php printf("%s?pageNum_rsAmazonz2=%d%s", $currentPage, min($totalPages_rsAmazonz2, $pageNum_rsAmazonz2 + 1), $queryString_rsAmazonz2); ? " 次へ /a ?php } // Show if not last page ? /td td width="23%" align="center" ?php if ($pageNum_rsAmazonz2 $totalPages_rsAmazonz2) { // Show if not last page ? a href=" ?php printf("%s?pageNum_rsAmazonz2=%d%s", $currentPage, $totalPages_rsAmazonz2, $queryString_rsAmazonz2); ? " 最終 /a ?php } // Show if not last page ? /td /tr /table ?php mysql_free_result($rsAmazonz2); ? /div div id="under" div id="under1" /div div id="under2" /div /div /div /div /body /html
https://w.atwiki.jp/bgwiki/pages/237.html
2008年末、菅原(瑶)を中心に結成されたバンド。 潜伏期間が長かったのにもかかわらず、いつの間にかバンド名が部員の間に広く知れ渡っていた。 2009年10月はPea Tea Party強化月間であった。 2009年12月の忘年会から一時休業期間に突入。 2010年4月から活動を再開。 メンバー 尾崎:ギター、なわとび 五十嵐(絢):マンドリン 菅原(瑶):フィドル 大築:バンジョー、竹馬 小形:ベース 活動時期 2008年12月~ バンド名の由来 いくつかの候補の中から、最終的に「カメリア」と「Pea Tea Party」の2つに絞られた。 「カメリア」は椿という意味であり、バンドの雰囲気に合っているのではという菅原(瑶)の意見。 それに対して、特に意味はないが音の響きが良いという理由で「Pea Tea Party」を推す大築と五十嵐(絢)、さらに小形。 どっちでも良さそうな尾崎。 多数決の結果、「Pea Tea Party」に決定した。 出演した行事 部内発表会 昼の部・深夜の部(2009年6月) ブルーグラスDAY@PENNY LANE(2009年7月) 札幌フェス(2009年8月) 定演オーディション(2009年9月) 中津川べりフォークジャンボリー(2009年10月) みちのく杜人音楽祭(2009年10月) 国際祭り(2009年10月) 第13回定期演奏会(2009年11月) 大学祭(2009年11月) 忘年会(2009年12月) みちのく公園・花のフェスティバル(2010年5月) 新入生歓迎Live@HEAVEN(2010年6月) とっておきの音楽祭(2010年6月) 部内発表会 夜の部(2010年6月) 定禅寺ストリートジャズフェスティバル(2010年9月) 国際祭り(2010年10月) 大学祭(2010年10月) カロリーオフ × Pea Tea Party ライブ@海風(2010年11月) 演奏した曲 Ain t No Way Of Knowin All Through Throwin Good Love After Bad Blue Ridge Cabin Home Carolina Moon Devil s Road Everytime Fox On The Run Get In Line Brother Going To Richmond Grandfather s Clock It Always Rain When I m Lonesome Jingle Bells Lovin Pretty Women My Caroline in Carolina No Longer A Sweetheart Of Mine Old Man In The Shanty Over In The Promised Land Sally Gardens St. Anne s Reel Take Me Home,Country Roads Uncle Clooney Played The Banjo When I m Knee Deep In Bluegrass ピーティーパーティー メンバーで遊びに行くことを「ピーティーパーティーする」という。 使用法「今日ピーティーパーティーしようぜ!」 以下ではこれまで行われたピーティーパーティーを振り返る。 第1回:ケーキバイキング@カウベル(withディオさん) 第2回:マイク20歳の誕生会@ローズガーデン 第3回:ケーキバイキング@イタトマ(withさとぅ) 第4回:ピーティーパーティー鍋@尾崎家 鍋に使われた材料は杜人音楽祭で行われた抽選会で当てた景品(大根、じゃがいも、梅干)を含む。 ※鍋に梅干は入っていない。 第5回:クリスマスパーティー@五十嵐家 第6回:ケーキバイキング@カウベル(with五十嵐(盟)、佐々木(悠)) のちになわとび大会@榴ヶ岡公園 第7回:マイク21歳の誕生会@和cafedays等 昼食→買い物→31アイスクリーム→カラオケ→バンド練→仙台っ子らーめん→コーラス練 第8回:とっておきの音楽祭 打ち上げ@ローズガーデン のちにジェンガand指ツイスター大会@大築家 第9回:まるこ院試明け遊び@深沼海岸(with横田さん、北島) のちに各自風呂休憩→手羽→カラオケ 第10会:小形21歳の誕生会@小形家 その他 みちのく公園内にあった遊具を使って遊んだところ、尾崎がなわとびに秀でていたため、本日(2009年10月18日)から彼を「なわとび王子」に任命する。 ちなみに竹馬女王は大築である。 第6回のケーキバイキングの際、某スイーツ男子がケーキ12個を平らげた。 連想キーワード ケーキバイキング、焼き肉、limitless、心のイケメン、せき込む、おそろいのスカートとネクタイ、スイーツ男子盟、たいやきのバースデーケーキ、“お父さーん、早く帰ってきてー”、教員委員会に言いつけてやる!、国の教育委員会ってどこ?文科省?、“おい、感動の涙はどうしたー”、Everytimeもう一回やります 著:五十嵐(絢)、Pea Tea Party一同
https://w.atwiki.jp/glorantha_ilh1/pages/18.html
編集//タグ 001/ 002/ 003/ 004/ 005/ 006/ 007/ 008/ 009/ 010/ 011/ 011/コメントログ/ 012/ 013/ 014/ 015/ 016/ 017/ 017/コメントログ/ 018/ 018/コメントログ/ 019/ 040/ 041/ 042/ 043 状態:自動翻訳 All Her ChildrenThe Lunar Credo All Her Children 彼女のすべての子供たち What follows is part of the introduction from ‘A Discourse on Ineffable Variety in the Empire of the Moon,’ by Cilor Negial, a sage of Irippi Ontor from Dyth in Karasal. 続くことは サイロール・ネギアル 、 Karasal の Dyth からのイリピー・オントールの賢人によって、「月の帝国(皇帝の) で言葉で言い表せない「バラエティー」の上に講演」から、イントロダクションの部分です。 By turns racy, waspish, and irreverent, it encapsulates the perspectives and prejudices of an educated Lunar who believes that the people of his Empire should outgrow their old ways. 活気がある、不愉快な、そして不遜な順番によって、それは彼の帝国(皇帝の) の人々が(彼・それ)らの古い方法に合わないほど大きくなるべきであると信じる教養を身につけているルナーの見地と偏見を要約します。 His views also appear elsewhere in this book, to provide entertainment if not education. 彼の意見は教育ではなく、娯楽を提供するために、同じくほかのところにこの本に現われます。 Our Glorious Empire comprises more than seven times seven cultures and peoples. 我々の輝かしい帝国(皇帝の) は7つの文化の7倍以上と民族を構成します。 The heart of the Empire is, of course, Glamour. 帝国(皇帝の) の心は、もちろん、グラマーです。 Never was a city more appropriately named, for its mystique, its beauty and, so an unkind soul would say, its ability to hide its flaws from the easily beguiled. 決していっそう適切に、その神秘性のために、その美しさという名前の都市そして、それで不親切な人が言うであろう、が容易にだまされた(人たち・もの)にその欠陥を隠すその能力ではありませんでした。 Glamour is a city of soaring bastions, glittering temples, and extraordinary sights, from the Monstrous Coliseum where gladiators fight bizarre Chaos beasts (the abusive against the abhorrent), to the silver Bridge of Dreams that arches to Moongate at the lip of the holy Crater. グラマーは剣闘士が奇異な混沌獣(忌まわしい(人たち・もの)に対しての口汚い(人たち・もの))と戦う怪物のようなコロシアムから、神聖な噴火口の唇において Moongate にアーチ形になる夢のシルバー橋まで急騰する要塞の都市、きらきらした寺院と異常な名所、です。 I will even accept the guides’ assurances that the sprawling workers’ slums are shady and full of character, rather than dark, dirty, and dangerous. 私は大の字になった労働者のスラムが暗くて、汚くて、そして危険であるよりむしろ、特徴で日陰で、そしてフルであるというガイドの保証を受け入れさえするでしょう。 But then, suffused as the whole Silver Shadow satrapy is by the glow of Rufelza directly overhead, where dreams come alive, so too must nightmares. けれどもそれから、直接頭上のルフェルザの光によって、シルバー影総督領全体がそうであるように、覆われて、夢が活気づいてくるところ(で・に)、悪夢も同じくそうしなくてはなりません。 The Dara Happans of the Oslir River Valley believe themselves the truest servants of the Empire. オスリル河谷のダラハッパ人は(彼・それ)ら自身帝国(皇帝の) の最も本当の使用人を信じます。 With so many thousands of years of unthinking obedience to unbending rules, I suppose these servants of Yelm, the Sun God feel entitled. 頑固な規則への思慮がない服従のそれほど多くの何年の何千人もとも一緒に、私はイェルムのこれらの使用人、権利を与えられる太陽神感触を仮定します。 Still, there is more to life than being able to recite one’s ancestors to ten generations. まだ、生活には10世代に自分の先祖を暗唱することが可能であるよりいっそう多くのものがあります。 Traditions are everything here men take precedence over women, and everyone knows their place. 伝承がここですべてです:男性たちが女性たちに優先されます、そして皆が(彼・それ)らの場所を知っています。 The Pelorians, who also live along the Oslir, are a simpler and earthier folk, farmers rather than city-dwellers. ペローリア人、前方へ同じく生きる人、オスリル、はそうであるより単純な、そしてもっと素朴なフォーク、都会の住民よりむしろ農民. They love life with a simple gusto. 彼らは単純な心からの喜びで生活が好きです。 A Pelorian feast-day is a great experience, indeed, but beware their practical japes. ペローリア人の祝祭日が、本当に、素晴らしい経験です、しかし(彼・それ)らの実用的な japes に用心してください。 Once revelers filled my wine goblet with the ink of the blue river-squid, and I was passing green water for a week. かつて飲み騒ぐ者が私のワインゴブレットを青い川イカのインクで満たしました、そして私は1週間緑の水を渡していました。 But I could not hold it against them, for they are as innocent and thoughtless as children, unlike the Darjiini. けれども私はそれに関して(彼・それ)らを悪く思うことができませんでした、なぜなら(彼・それ)らは、ダージーンのと異なり、子供たちと同じぐらい罪がなくて、そして思いやりがありませんから。 They worship spirits, not gods, and their debauched celebrations have an edge of darkness and danger to them. (彼・それ)ら、神々と(彼・それ)らの堕落した祝典ではなく、信仰精霊は(彼・それ)らに暗闇と危険のエッジを持っています。 They may seem easy-going, but I would not want to stray too far from the roads and find myself unwittingly blundering into one of their swamp-island fetish-shrines. (彼・それ)らは温和に思われるかもしれません、しかし私は道路からあまりにも遠くて道に迷うことを望んで、そして私自身が知らずに(彼・それ)らの沼島呪物 - 神社の1にうっかり入り込んでいるのを見いださないでしょう。 The Carmanians, by contrast, are altogether more serious folk. カルマニア人は、それと対照して、まったくいっそう真剣な人々です。 The descendants of invaders from the West, they are part of the Empire but still distinct. 西洋からの侵略者の子孫、(彼・それ)らは帝国(皇帝の) の部分である、しかしそれでも別です。 Their lordly karmanoi caste (with their wizards) rule them. (彼・それ)らの尊大な karmanoi カースト制度((彼・それ)らの魔法使いと一緒に)は(彼・それ)らを支配します。 If I dared, I might suggest that they are a proud and dangerous people, prickly of their honor. もし私が勇気があったなら、私は(彼・それ)らが(彼・それ)らの名誉の得意で、そして危険な、怒りっぽい民族であることを提案するかもしれません。 But of course I don’t. けれどももちろん私はそうしません。 The Pelandans who live under and to the east of the Carmanians are a fine and friendly folk artists and dreamers, believers in balance in all things. カルマニア人の東の下にそしてに住んでいる Pelandans は何事にも素晴らしい、そして友好的な人々:芸術家と空想家、バランスの信者です。 No wonder the Carmanians lord over them and everyone else patronizes them. (彼・それ)らとほかの皆の上のカルマニア人貴族が(彼・それ)らを後援することは少しも不思議でありません。 To the east, first you come to the Rinliddi, who worship a whole flock of bird gods with entertainingly grand names, and beyond them you begin to reach the new settler lands of Oraya. 東に、最初にあなたはリンリディ、 entertainingly に雄大な名前を持った鳥神々の一団全体を崇拝する人、のところに来ます、そして(彼・それ)らを越えてあなたは Oraya の新しい移住者国に着き始めます。 It is inspiring to see good Lunar folk turning the wilds into a civilized land. 良いルナーの人々が荒野を文明的なランドに変えているのを見ることは鼓舞的です。 But the rigors of colonization and the constant threat of the horse barbarians of Pent combine to make them a dour and simple folk, strong of heart, arm, and faith, but a little light in education and manners. しかし心情、腕と信頼、であるが、教育とマナーで少し軽い植民地建設とペントの野蛮人が(彼・それ)らを強い不機嫌な、そして単純な人々にするために結合する馬の絶え間がない脅威の厳しさ。 But it will come, it will come. けれどもそれは来るでしょう、それは来るでしょう。 South again to Kostaddi, humble peasants labor to keep their arrogant masters, the Sable Rider barbarians of the Hungry Plateau in barbarous leisure. 南に再び Kostaddi に、謙虚な小作農が(彼・それ)らの横柄なマスター、残忍なレジャーでのおなかがすいた安定期のセーブル族騎手野蛮人を引き留めるために働きます。 South, further south, half-tamed Sylila, where the locals still wear their trousers under their togas and then the Provinces. 南、それ以上の南、がシリーラを半ば飼いならしました、そしてそこで地元の人は(彼・それ)らのトーガそして次に州の下でまだ(彼・それ)らのズボンをはいています。 Civilization is coming to the Provinces, with its cities, roads, and subtle hypocrisies. 文明が、その都市、道路と微妙な偽善で、州に来ます。 Sadly, bath houses come further down the list of priorities, but while upwind it is possible to be impressed by the naive fervor of their newfound devotion to Sedenya. 嘆かわしいことに、浴場がプライオリティのリストの下方に、しかし風上に向ってセデーニアへの(彼・それ)らの最近注目を浴び始めた献身の単純な熱情に感銘を受けることが可能である間にさらに来ます。 The Lunar Credo ルナー信条 I believe in the Red Goddess, Mistress of Life and Death, Who descended naked into the darkness, Was slain by the Shadow Guardian, And resurrected by the secrets of bright Spider Mother. 私は赤の女神、生涯の書と暗闇の中に裸に降りた、影の「ガーディアン」によって殺されて、そして頭が良いクモのお母さんの秘密によって生き返らせられた死の女主人を信じます。 She conquered the Bear to rekindle the sky. 彼女は空を再燃させるために熊を征服しました。 She traversed the land of the dead and overcame the Shadow Guardians, And brings us the freedom of our Seventh Soul. 彼女は死者の土地を横断して、そして影の保護者に打ち勝って、そして我々に我々の7番目の精神の自由をもたらします。 She is the Mirror and She is the Mask. 彼女は鏡です、そして彼女はマスクです。 She is the Substance and the Passion. 彼女は物質と感情薬です。 Amen. しかり。 名前 コメント すべてのコメントを見る
https://w.atwiki.jp/vipcommittee/pages/131.html
自動バックアップ ネットワークトラフィックの監視 アクセス解析 通知メールの件名の文字化け サーバマシンの移行 マシンスペック OSのインストール 一般ユーザの作成 bashの環境設定 sudoユーザの設定 yumの設定 rootメールの転送先設定 sendmailの設定 Apacheの設定 Apacheのリバースプロクシとバーチャルホストの設定 PHPをダウングレード MySQLサーバの設定 MySQLデータのバックアップとリストア XOOPSやWikiデータのバックアップとリストア Apacheの起動 Wikiの添付ファイルの容量制限 登録ユーザ一覧の表示項目の変更 ネットワーク構成 リバースプロクシ(Reverse Proxy)の設定 (Solarisマシン) リモートIPの書き換え設定 (Linuxマシン) 新規登録できない! フォーラムに投稿できない!! 新規ユーザのイベント更新通知メッセージの受取方法をメールに変更する 新規ユーザのイベント通知機能をデフォルトでONにする デザイン 自動バックアップ http //www.t-sk.org/~chick/pukiwiki/index.php?pdumpfs%A4%C7%A5%D0%A5%C3%A5%AF%A5%A2%A5%C3%A5%D7 ネットワークトラフィックの監視 http //vip.okada-lab.org/mrtg/ ここ( http //fedorasrv.com/mrtg.shtml )を参考にして導入. アクセス解析 http //vip.okada-lab.org/usage/ 通知メールの件名の文字化け http //xoops.jp/smartsection+item.itemid+156.htm サーバマシンの移行 最初にWebサイトを立ち上げたサーバマシンは研究用であったため,新たにWebサーバ用にマシンを組み立てた後,Webのデータを全て移動させました. マシンスペック 新しいWebサーバのスペックは以下の通りです. CPU Intel Celeron-D 326 (2.53GHz, FSB 533MHz, 256KB L2Cache, EM64T, LGA775) マザーボード BIOSTAR i945G-M7 (i945G + ICH7, DDR2 DIMM×4スロット, 10/100Base-T (Realtek), -SATA2×4ポート, MicroATX) メモリ PQI JAPAN QD2533-512 (240pin, DIMM DDR2 SDRAM, 533MHz(PC4300), 512MB, 永久保証) ×2個 HDD Seagate ST3120813AS (120GB, 7200rpm, SATA 3Gb/s, 8MB Cache) PCケース Fast Corp. CS-221S300W (300W, MicroATX) これだけ合わせて,5万円弱で購入してきました. OSのインストール Fedora Core 4をインストールしました.(参考:http //fedorasrv.com/fedora4.shtml) まず,Fedora Coreプロジェクトの公式WebサイトからISOイメージ(FC4-i386-disc1.iso, FC4-i386-disc2.iso, FC4-i386-disc3.iso, FC4-i386-disc4.iso)をダウンロードしてきてCDに焼きます. BIOSの設定で最初にCD-ROMドライブから起動するようにしておき,1枚目のCDをCD-ROMドライブ(研究室の他のDOS/Vマシンから借用しました)に挿入して,選択肢は次のものを選びます. Langage Selection Japanese (日本語) キーボード設定 日本語 インストールの種類 カスタム ディスクパーティションの設定 自動パーティション設定 自動パーティション設定 システムのすべてのパーティションを削除, 作成された(そして変更された)パーティションを確認 ディスクの設定 (確認して次へ) ブートローダーの設定 (確認して次へ) ネットワークの設定 編集- DHCPを使わない, 手動設定 medinux, ゲートウェイ 192.168.1.4, 1番目のDNS 192.168.1.39 ファイヤーウォールの設定 ファイアウォールなし, 無効 タイムゾーンの選択 アジア/東京 Rootパスワードを設定 hogehoge, hogehoge パッケージグループの選択 (httpdやtelnet等を選択.後からyumでインストールできるので,あまりこだわらなくてもいいかも) インストール準備完了 (無事にインストールが完了することを願って「次」ボタンをクリック) (どこかでntpサーバを設定するところがあったはず... ntpサーバに関してはここを参照.) 一般ユーザの作成 初めて起動するとFirst Bootが動いてユーザの作成等ができる.ここで,一般ユーザ(vip)を作っておく. bashの環境設定 $ vi ~/.bash_profile 最後に以下を追加. alias mv= mv -i alias cp= cp -i alias rm= rm -i alias jeuc= LANG=ja_JP.eucJP alias jutf= LANG=ja_JP.utf8 alias eng= LANG=C sudoユーザの設定 システムの設定をする際にいちいちrootユーザになるのも面倒なときがあるので,sudoを使えるようにする. $ su - # vi /etc/sudoers # %wheel ALL=(ALL) ALL ↓コメントアウトを削除 %wheel ALL=(ALL) ALL # vi /etc/group wheel x 10 root ↓ユーザ名を追加 wheel x 10 root,vip yumの設定 http //fedorasrv.com/fedora4-init.shtmlの「(5) パッケージ管理システム設定」を参考にして,yumがrpmをダウンロードしてくるサーバを日本のミラーサイトに限定させる. ただし,yum -y updateをすると時間がかかるので後回し. rootメールの転送先設定 root宛てのメールが自分に届くようにする. # vi /etc/aliases #root marc ↓変更 root hogehoge@okada-lab.org sendmailの設定 # echo "vip.okada-lab.org" /etc/mail/local-host-names # echo "vip.okada-lab.org RELAY" /etc/mail/access # makemap hash /etc/mail/access /etc/mail/access Apacheの設定 # vi /etc/httpd/conf/httpd.conf ServerTokens OS ↓変更 ### by tasaki 2006-05-23 ###ServerTokens OS ServerTokens Prod #ServerName www.example.com 80 ↓変更 ### by tasaki 2006-05-23 #ServerName www.example.com 80 ServerName medinux.okada-lab.org 80 Options Indexes FollowSymLinks ↓変更 ### by tasaki 2006-05-23 ### Options Indexes FollowSymLinks Options Indexes ExecCGI FollowSymLinks AllowOverride None ↓変更 ### by tasaki 2006-05-23 ### AllowOverride None AllowOverride All ServerSignature On ↓変更 ### by tasaki 2006-05-23 ###ServerSignature On ServerSignature Off AddDefaultCharset UTF-8 ↓変更 ### by tasaki 2006-05-23 ###AddDefaultCharset UTF-8 #AddHandler cgi-script .cgi ↓変更 ### by tasaki 2006-05-23 AddHandler cgi-script .cgi .pl Apacheのリバースプロクシとバーチャルホストの設定 rpaf_moduleに関しては下記を参照. # vi /etc/httpd/conf.d/virtualhost.conf LoadModule rpaf_module /usr/lib/httpd/modules/mod_rpaf-2.0.so RPAFenable On RPAFsethostname Off RPAFproxy_ips 192.168.1.39 NameVirtualHost vip.okada-lab.org 80 NameVirtualHost vip.okada-lab.org 8080 VirtualHost vip.okada-lab.org 80 ServerName vip.okada-lab.org /VirtualHost VirtualHost vip.okada-lab.org 8080 ServerName vip.okada-lab.org /VirtualHost バーチャルホストを使っているのは,以前8080番ポートで運用していたときの名残です. PHPをダウングレード Fedora Core 4には標準でPHP5系がインストールされます.しかし,XOOPSやWikiを動作させる際にPHP5系では不具合がでることがあります.そこで,PHP5系をPHP4系にダウングレードさせます. http //www.t-sk.org/~chick/pukiwiki/index.php?Fedora%20Core%204%A4%C7PHP4を参考. yumで自動的にアップデートされないように次の記述を追加する. # vi /etc/yum.conf 最後に追加. exclude=kernel* php* MySQLサーバの設定 まず,http //fedorasrv.com/mysql.shtmlを参考にして,MySQLサーバの初期設定をする. 次に,http //fedorasrv.com/xoops.shtmlを参考にして,MySQLサーバ上にXOOPS用のデータベースとユーザを作成します.このとき,データベース名を「xoops」としておくとセキュリティ的によろしくないので,別の名前にすると良い. MySQLデータのバックアップとリストア 旧サーバにて次のコマンドを実行してMySQLのデータをバックアップします. $ mysqldump -u MySQLのユーザ名 -pパスワード XOOPSのデータベース名 xoops.bak このxoops.bakをscp等を使って新サーバに移動させた後,次のコマンドを実行してリストアします. $ mysql -u MySQLのユーザ名 -pパスワード データベース名 xoops.bak XOOPSやWikiデータのバックアップとリストア 旧サーバにて次のコマンドを実行してXOOPSやWikiのデータをバックアップします. # cd /var/www # tar cvfz ~/html.tar.gz html/ このhtml.tar.gzをscp等を使って新サーバに移動させた後,次のコマンドを実行してリストアします. # tar xvfz html.tar.gz --same-owner -C /var/www Apacheの起動 # /etc/rc.d/init.d/httpd start Wikiの添付ファイルの容量制限 http //pukiwiki.sourceforge.jp/?%E7%B6%9A%E3%83%BB%E8%B3%AA%E5%95%8F%E7%AE%B1%2F544 登録ユーザ一覧の表示項目の変更 白扇の機能を使ってユーザ情報に所属大学や所属研究室の項目を追加したけど,登録ユーザ一覧にそれらが反映されてません. そこで,xoopsmembers_searchresults.htmlのテンプレートを変更しました. 6行目 (以下は見やすくするために改行しておきました) th align="center" {$lang_avatar} /th th align="center" {$lang_username} /th th align="center" {$lang_realname} /th th align="center" 所属大学 /th th align="center" 所属研究室 /th th align="center" 職業 /th th align="center" {$lang_email} /th th align="center" {$lang_url} /th th align="center" {$lang_regdate} /th th align="center" {$lang_lastlogin} /th th align="center" {$lang_posts} /th 13行目 (以下は見やすくするために改行しておきました) td class="even" {$users[i].avatar} /td td class="odd" a href=" {$xoops_url} /userinfo.php?uid= {$users[i].id} " {$users[i].name} /a /td td class="even" {$users[i].realname} /td td class="odd" {$users[i].id|suin_user "var32"} /td td class="even" {$users[i].id|suin_user "var33"} /td td class="odd" {$users[i].id|suin_user "var36"} /td td align="center" class="even" {$users[i].email} /td td class="odd" align="center" {$users[i].website} /td td class="even" align="center" {$users[i].registerdate} /td td class="odd" align="center" {$users[i].lastlogin} /td td class="even" align="center" {$users[i].posts} /td 上記でsuin_userとあるのは,白扇モジュール作者が作成したSmartyプラグインです.http //www.suin.jp/modules/mydownloads/singlefile-cid-10-lid-38.asp ネットワーク構成 #ref error :ご指定のファイルが見つかりません。ファイル名を確認して、再度指定してください。 (network.jpg) 合同合宿のWebサイトにはLAMP(Linux + Apache + MySQL + PHP)環境下でXOOPSとWikiを運用したいなぁ (だって,インターネット上にたくさん情報があるんだもん!).でも,岡田研究室にはグローバルIPは1個しかないからなぁ,80番ポートにリクエストがあるとSolarisに構築されたメインWebサーバが応答しちゃう.さぁー どーしよー. 方法その1 81番ポートでアクセスされたらルータの設定で192.168.1.17にIPフォワードしよう! 結果 セキュリティポリシーが厳しいネットワーク環境だと,81番なんていう変なポートはアクセスできない. 方法その2 81番がだめなら8080番ポートを使えばいいんじゃない? 結果 セキュリティポリシーが非常に厳しいネットワーク環境だと,8080番もアクセスできない. 方法その3 リバースプロクシでプライベートネットワーク内のWebサーバからコンテンツを呼び出す. 結果 今のとこいい感じ♪ リバースプロクシ(Reverse Proxy)の設定 (Solarisマシン) Solarisマシンの/etc/apache/httpd.confの最後に次の記述を追加する. # for VIP Camp added by Tasaki 2006-04-05 VirtualHost 192.168.1.39 ServerAdmin admin@okada-lab.org ServerName vip.okada-lab.org ProxyRequests off ProxyPass / http //192.168.1.17 80/ ErrorLog /usr/local/apache/logs/vip-error_log CustomLog /usr/local/apache/logs/vip-access_log combined /VirtualHost 設定を保存したら次のコマンドでApacheを再起動する. # /usr/apache/bin/apachectl restart リモートIPの書き換え設定 (Linuxマシン) 上の設定でリバースプロクシはできるのですが,Linuxマシン上のApacheのログを見ると全てSolarisマシン(192.168.1.39)からのアクセスとして記録されます.これだと,リモートIPによるアクセス解析や(もし荒らされた場合に)アクセス制限とかができなくなっちゃいます. そこで導入したのが,mod_rpafというApacheの追加モジュールです. http //stderr.net/apache/rpaf/ リバースプロクシはユーザからのリクエスト受けて,別のマシンに代理でリエストするときに,リモートIP(ユーザのIP)情報をX-Forwarded-Forというリクエストヘッダーに保存しています.mod_rpafモジュールは特定の信頼できるホストからリクエストがあった場合,リモートIP情報をX-Forwarded-Forの値で上書きします.これにより,Linuxマシンのログには正しくユーザのIPが記録されるようになります. 公式サイトよりmod_rpafの最新版(2006-04現在ver. 0.5)をダウンロードしてきて,次のようにしてコンパイル インストールする. $ tar xvfz mod_rpaf-0.5.tar.gz $ cd mod_rpaf-0.5 $ vi Makefile APXS=/home/thomas/build/apache-dev/bin/apxs ↓書き換え APXS=/usr/sbin/apxs $ make rpaf-2.0 # make install-2.0 Linuxマシンの/etc/httpd/conf/httpd.confの最後に次の記述を追加する. # for VIP Camp added by Tasaki 2006-04-05 LoadModule rpaf_module /usr/lib/httpd/modules/mod_rpaf-2.0.so RPAFenable On RPAFsethostname Off RPAFproxy_ips 192.168.1.39 最後のRPAFproxy_ipsでリバースプロクシを設定しているホスト(Soralisマシン)のIPを指定します. 設定を保存したら次のコマンドでApacheを再起動する. # /etc/rc.d/init.d/httpd restart Linuxマシンに記録されるログは次のように改善されました. mod_rpad適用前 192.168.1.39 - - [05/Apr/2006 17 15 28 +0900] "GET / HTTP/1.1" ... mod_rpad適用後 xx.22.95.202 - - [06/Apr/2006 17 54 37 +0900] "GET / HTTP/1.1" ... 参考:http //www.namazu.org/~takesako/diary/?date=20031205 新規登録できない! フォーラムに投稿できない!! XOOPSのデフォルトの設定では,CSRF攻撃対策のためにブラウザから送信されるHTTP_REFERER情報をチェックしています.しかし,Norton等を利用している場合,HTTP_REFERER情報が送信されないことがあります.そのために,新規登録できなかったり,フォーラムに投稿できなかったりします. これを改善するためには,ユーザに対してNortonの設定でHTTP_REFERERを送信するように変更してもらうと良い. Nortonの設定方法:http //snow-drop.or.tv/norton/ しかし,一般ユーザにRefererうんぬんの話をするのはとても大変です. そこで考えられるもう一つの手段は,XOOPSのコアをハックしてHTTP_REFERERをチェックしている部分を機能しなくさせる方法です. XOOPS_ROOT/include/functions.php 155行目~ function xoops_refcheck($docheck=1) { $ref = xoops_getenv(? HTTP_REFERER? ); if ($docheck == 0) { return true; } if ($ref == ? ? ) { ### 2006-03-07 by tasaki ### return false; return true; } if (strpos($ref, XOOPS_URL) !== 0 ) { return false; } return true; } ただし,これは? ? 改悪手法? ? でもあります.明示的にセキュリティの穴を作るわけですから,当然悪意あるユーザによって大量のユーザを登録されたりフォーラムを荒らされたりする可能性が生じます. ※ご存知の方もいらっしゃると思いますが,ソーシャルネットワーキングサイトのmixiで「ぼくはまちちゃん!」という書き込みが連鎖的に広がっていったのも,このCSRF攻撃によるものです. 参考 http //xoops.s22.xrea.com 8080/modules/newbb/viewtopic.php?topic_id=202&forum=3&post_id=896 http //www.itmedia.co.jp/news/articles/0504/23/news005.html http //bakera.jp/hatomaru.aspx/glossary/0043005300520046 http //www.tdiary.org/20050721.html 新規ユーザのイベント更新通知メッセージの受取方法をメールに変更する XOOPS_ROOT/kernel/user.phpの98行目を次のように変更する. $this- initVar(? notify_method? , XOBJ_DTYPE_OTHER, 1, false); ↓ $this- initVar(? notify_method? , XOBJ_DTYPE_OTHER, 2, false); 新規ユーザのイベント通知機能をデフォルトでONにする 参考 URL フォーラムの新着情報イベントをユーザに送信させたいが,デフォルトでは全てのイベントを通知しないようになっている. SQL文を発行してxoopsnotificationsテーブルにフィールドを直接追加する. 例 ユーザID 50~100番の(未登録)ユーザに「新規トピックまたは返信の投稿があった場合に通知する」のイベントを通知させる. % vi not.pl #!/usr/bin/perl -w for ($i = 50; $i = 100; $i++) { print ?"INSERT INTO XOOPSデータベース名.XOOPSデータベース接頭辞_xoopsnotifications?" . ?" (not_id, not_modid, not_itemid, not_category,?" . ?" not_event, not_uid, not_mode)?" . ?" VALUES ( NULL, モジュールID, アイテムID, ? global? , ? new_post? , $i, 0);??n?"; } % perl not.pl not.sql % mysql -u データベースユーザ名 -p not.sql Enter password パスワード入力 ただし,? ? XOOPSデータベース名? ? ,? ? XOOPSデータベース接頭辞? ? ,? ? モジュールID? ? ,? ? アイテムID? ? は環境に合わせて適宜変更してください.モジュールIDやカテゴリ名等は実際にそのイベントをOn/Offしてみたときにデータベース内の値がどう変わるかをphpmyadminで確認するとわかると思います (もっと簡単にわかる方法ないのかなぁ~). デザイン Special Thanks ☆ to-biさん 「Webページ作成係備忘録」を編集
https://w.atwiki.jp/julieta/pages/19.html
編集 smartmontools5.37 # cd /usr/ports/sysutils/smartmontools # vi /etc/periodoc/daily/cronsmart.sh #!/bin/sh /usr/local/sbin/smartctl -a /dev/ad4 | mail -s smart mail@domain.com # cp /usr/local/etc/smartd.conf.sample /usr/local/etc/smartd.conf # vi /usr/local/etc/smartd.conf DEVICESCANをコメントアウト # /dev/ad4 -H -m aaa@bbb.ccc.com # /dev/ad5 -H -m aaa@bbb.ccc.com # /dev/ad6 -a -o on -S on -s (S/mm/dd/w/hh|L/../../6/07) -H -m aaa@bbb.ccc.com # smartctr -a /dev/ad4 # vi /etc/rc.conf smartd_enable="YES"
https://w.atwiki.jp/smileparty/
@wikiへようこそ ウィキはみんなで気軽にホームページ編集できるツールです。 このページは自由に編集することができます。 メールで送られてきたパスワードを用いてログインすることで、各種変更(サイト名、トップページ、メンバー管理、サイドページ、デザイン、ページ管理、等)することができます まずはこちらをご覧ください。 @wikiの基本操作 用途別のオススメ機能紹介 @wikiの設定/管理 分からないことは? @wiki ご利用ガイド よくある質問 無料で会員登録できるSNS内の@wiki助け合いコミュニティ @wiki更新情報 @wikiへのお問合せフォーム 等をご活用ください @wiki助け合いコミュニティの掲示板スレッド一覧 #atfb_bbs_list その他お勧めサービスについて 大容量1G、PHP/CGI、MySQL、FTPが使える無料ホームページは@PAGES 無料ブログ作成は@WORDをご利用ください 2ch型の無料掲示板は@chsをご利用ください フォーラム型の無料掲示板は@bbをご利用ください お絵かき掲示板は@paintをご利用ください その他の無料掲示板は@bbsをご利用ください 無料ソーシャルプロフィールサービス @flabo(アットフラボ) おすすめ機能 気になるニュースをチェック 関連するブログ一覧を表示 その他にもいろいろな機能満載!! @wikiプラグイン @wiki便利ツール @wiki構文 @wikiプラグイン一覧 まとめサイト作成支援ツール バグ・不具合を見つけたら? 要望がある場合は? お手数ですが、メールでお問い合わせください。